#ifndef __HEADFILE_H__
#define __HEADFILE_H__

#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "math.h"

#include "FreeRTOS.h"
#include "Task.h"
#include "stdio.h"
#include "semphr.h"
#include "queue.h"

#include "stm32f1xx.h"
#include "main.h"
#include "gpio.h"
#include "usart.h"
#include "tim.h"
#include "i2c.h"
#include "adc.h"
#include "rtc.h"

#include "AppTaskCode.h"
#include "led.h"
#include "beep.h"
#include "button.h"
#include "handler.h"
#include "motor.h"
#include "aht10.h"
#include "pulse.h"
#include "mpu6050.h"
#include "oled.h"
#include "fun.h"
#include "sports.h"

extern TaskHandle_t xTaskHandle_MainDisplay;
extern TaskHandle_t xTaskHandle_TimeSetting;
extern TaskHandle_t xTaskHandle_AlarmSetting;
extern TaskHandle_t xTaskHandle_Stopwatch;
extern TaskHandle_t xTaskHandle_HeartRate;
extern TaskHandle_t xTaskHandle_SportsData;
extern TaskHandle_t xTaskHandle_SystemMonitor;
extern TaskHandle_t xTaskHandle_TimeMonitor;
extern TaskHandle_t xTaskHandle_AlarmNotify;

extern xQueueHandle xQueue_KeyEvent;

extern RTC_TimeTypeDef gRtcTime;
extern RTC_DateTypeDef gRtcDate;
extern int8_t gAlarmNotifyTime[3];
extern uint8_t gCurrentDisplayPage;

extern uint8_t usPos;
extern uint16_t usPulse[128];

extern volatile unsigned long long ullTimeCount;

#endif
